package com.tedu.egmvcboot.result;

import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

/**
 * 统一结果响应
 * Controller处理任何请求后返回的结果格式统一，这样也便于前端的处理方式一致
 * */
@Setter
@Getter
@NoArgsConstructor
@AllArgsConstructor
public class JsonResult {
    //状态码，用于告知前端某个具体的业务请求处理的结果
    private Integer statusCode;
    //提示消息，用于让前端告知给用户处理结果
    private String message;
    //响应数据，处理某个业务后产生的需要在前端展示的数据（例如一个集合，或者某个VO等）
    private Object data;
    public JsonResult (Status status){
        this.statusCode=status.getStatusCode();
        this.message=status.getMessage();
    }
    public JsonResult (Status status,Object data){
//        this.statusCode=status.getStatusCode();
//        this.message=status.getMessage();
        this(status);//调用上一个构造方法，用来赋值给Status status
        this.data=data;
    }
}
